[INFO] fetching crate rppal 0.11.3...
[INFO] checking rppal-0.11.3 against master#af3c6e733a40e671550e0f0f5aeecaa13772ba56 for pr-74989
[INFO] extracting crate rppal 0.11.3 into /workspace/builds/worker-4/source
[INFO] validating manifest of crates.io crate rppal 0.11.3 on toolchain af3c6e733a40e671550e0f0f5aeecaa13772ba56
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate rppal 0.11.3
[INFO] finished tweaking crates.io crate rppal 0.11.3
[INFO] tweaked toml for crates.io crate rppal 0.11.3 written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 95a42afe1623858e8a358e30988b223bc43735594af3c323f8503e96e16c5940
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "95a42afe1623858e8a358e30988b223bc43735594af3c323f8503e96e16c5940", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "95a42afe1623858e8a358e30988b223bc43735594af3c323f8503e96e16c5940", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "95a42afe1623858e8a358e30988b223bc43735594af3c323f8503e96e16c5940", kill_on_drop: false }`
[INFO] [stdout] 95a42afe1623858e8a358e30988b223bc43735594af3c323f8503e96e16c5940
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+af3c6e733a40e671550e0f0f5aeecaa13772ba56" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] fda9e06ff91f6d06df91c6f423a930a5b991ca54250f1b3edd01332b535dd09c
[INFO] running `Command { std: "docker" "start" "-a" "fda9e06ff91f6d06df91c6f423a930a5b991ca54250f1b3edd01332b535dd09c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.77
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking simple-signal v1.1.1
[INFO] [stderr]     Checking rppal v0.11.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/gpio/ioctl.rs:49:23
[INFO] [stdout]    |
[INFO] [stdout] 49 | const TYPESHIFT: u8 = (NRSHIFT + NRBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/gpio/ioctl.rs:50:23
[INFO] [stdout]    |
[INFO] [stdout] 50 | const SIZESHIFT: u8 = (TYPESHIFT + TYPEBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/gpio/ioctl.rs:51:22
[INFO] [stdout]    |
[INFO] [stdout] 51 | const DIRSHIFT: u8 = (SIZESHIFT + SIZEBITS);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:43:23
[INFO] [stdout]    |
[INFO] [stdout] 43 | const TYPESHIFT: u8 = (NRSHIFT + NRBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 | const SIZESHIFT: u8 = (TYPESHIFT + TYPEBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:45:22
[INFO] [stdout]    |
[INFO] [stdout] 45 | const DIRSHIFT: u8 = (SIZESHIFT + SIZEBITS);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 | const REQ_RD_MODE: IoctlLong = (DIR_READ | TYPE_SPI | NR_MODE | SIZE_U8);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:64:37
[INFO] [stdout]    |
[INFO] [stdout] 64 | const REQ_RD_LSB_FIRST: IoctlLong = (DIR_READ | TYPE_SPI | NR_LSB_FIRST | SIZE_U8);
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:65:41
[INFO] [stdout]    |
[INFO] [stdout] 65 | const REQ_RD_BITS_PER_WORD: IoctlLong = (DIR_READ | TYPE_SPI | NR_BITS_PER_WORD | SIZE_U8);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:66:40
[INFO] [stdout]    |
[INFO] [stdout] 66 | const REQ_RD_MAX_SPEED_HZ: IoctlLong = (DIR_READ | TYPE_SPI | NR_MAX_SPEED_HZ | SIZE_U32);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:67:35
[INFO] [stdout]    |
[INFO] [stdout] 67 | const REQ_RD_MODE_32: IoctlLong = (DIR_READ | TYPE_SPI | NR_MODE32 | SIZE_U32);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | const REQ_WR_MESSAGE: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MESSAGE);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 | const REQ_WR_MODE: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MODE | SIZE_U8);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:71:37
[INFO] [stdout]    |
[INFO] [stdout] 71 | const REQ_WR_LSB_FIRST: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_LSB_FIRST | SIZE_U8);
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 | const REQ_WR_BITS_PER_WORD: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_BITS_PER_WORD | SIZE_U8);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:73:40
[INFO] [stdout]    |
[INFO] [stdout] 73 | const REQ_WR_MAX_SPEED_HZ: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MAX_SPEED_HZ | SIZE_U32);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:74:35
[INFO] [stdout]    |
[INFO] [stdout] 74 | const REQ_WR_MODE_32: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MODE32 | SIZE_U32);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/macros.rs:36:45
[INFO] [stdout]     |
[INFO] [stdout] 36  |         let mut array: [_; $len] = unsafe { std::mem::uninitialized() };
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/gpio.rs:374:30
[INFO] [stdout]     |
[INFO] [stdout] 374 |             let pins_taken = init_array!(AtomicBool::new(false), pin::MAX);
[INFO] [stdout]     |                              --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/macros.rs:36:45
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut array: [_; $len] = unsafe { std::mem::uninitialized() };
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | 
[INFO] [stdout]   ::: src/gpio/mem.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let locks = init_array!(AtomicBool::new(false), GPIO_MEM_REGISTERS);
[INFO] [stdout]    |                     ------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/gpio/ioctl.rs:49:23
[INFO] [stdout]    |
[INFO] [stdout] 49 | const TYPESHIFT: u8 = (NRSHIFT + NRBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/gpio/ioctl.rs:50:23
[INFO] [stdout]    |
[INFO] [stdout] 50 | const SIZESHIFT: u8 = (TYPESHIFT + TYPEBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/gpio/ioctl.rs:51:22
[INFO] [stdout]    |
[INFO] [stdout] 51 | const DIRSHIFT: u8 = (SIZESHIFT + SIZEBITS);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:43:23
[INFO] [stdout]    |
[INFO] [stdout] 43 | const TYPESHIFT: u8 = (NRSHIFT + NRBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 | const SIZESHIFT: u8 = (TYPESHIFT + TYPEBITS);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:45:22
[INFO] [stdout]    |
[INFO] [stdout] 45 | const DIRSHIFT: u8 = (SIZESHIFT + SIZEBITS);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 | const REQ_RD_MODE: IoctlLong = (DIR_READ | TYPE_SPI | NR_MODE | SIZE_U8);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:64:37
[INFO] [stdout]    |
[INFO] [stdout] 64 | const REQ_RD_LSB_FIRST: IoctlLong = (DIR_READ | TYPE_SPI | NR_LSB_FIRST | SIZE_U8);
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:65:41
[INFO] [stdout]    |
[INFO] [stdout] 65 | const REQ_RD_BITS_PER_WORD: IoctlLong = (DIR_READ | TYPE_SPI | NR_BITS_PER_WORD | SIZE_U8);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:66:40
[INFO] [stdout]    |
[INFO] [stdout] 66 | const REQ_RD_MAX_SPEED_HZ: IoctlLong = (DIR_READ | TYPE_SPI | NR_MAX_SPEED_HZ | SIZE_U32);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:67:35
[INFO] [stdout]    |
[INFO] [stdout] 67 | const REQ_RD_MODE_32: IoctlLong = (DIR_READ | TYPE_SPI | NR_MODE32 | SIZE_U32);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:69:35
[INFO] [stdout]    |
[INFO] [stdout] 69 | const REQ_WR_MESSAGE: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MESSAGE);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 | const REQ_WR_MODE: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MODE | SIZE_U8);
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:71:37
[INFO] [stdout]    |
[INFO] [stdout] 71 | const REQ_WR_LSB_FIRST: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_LSB_FIRST | SIZE_U8);
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 | const REQ_WR_BITS_PER_WORD: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_BITS_PER_WORD | SIZE_U8);
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:73:40
[INFO] [stdout]    |
[INFO] [stdout] 73 | const REQ_WR_MAX_SPEED_HZ: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MAX_SPEED_HZ | SIZE_U32);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/spi/ioctl.rs:74:35
[INFO] [stdout]    |
[INFO] [stdout] 74 | const REQ_WR_MODE_32: IoctlLong = (DIR_WRITE | TYPE_SPI | NR_MODE32 | SIZE_U32);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/macros.rs:36:45
[INFO] [stdout]     |
[INFO] [stdout] 36  |         let mut array: [_; $len] = unsafe { std::mem::uninitialized() };
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/gpio.rs:374:30
[INFO] [stdout]     |
[INFO] [stdout] 374 |             let pins_taken = init_array!(AtomicBool::new(false), pin::MAX);
[INFO] [stdout]     |                              --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/macros.rs:36:45
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut array: [_; $len] = unsafe { std::mem::uninitialized() };
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | 
[INFO] [stdout]   ::: src/gpio/mem.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let locks = init_array!(AtomicBool::new(false), GPIO_MEM_REGISTERS);
[INFO] [stdout]    |                     ------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 5.73s
[INFO] running `Command { std: "docker" "inspect" "fda9e06ff91f6d06df91c6f423a930a5b991ca54250f1b3edd01332b535dd09c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fda9e06ff91f6d06df91c6f423a930a5b991ca54250f1b3edd01332b535dd09c", kill_on_drop: false }`
[INFO] [stdout] fda9e06ff91f6d06df91c6f423a930a5b991ca54250f1b3edd01332b535dd09c
